start   previous   next

Shout3D™ 2.0 - Workflow Tutorial


Compare with .s3d

If you're using MAX, export the same scene to .s3d format. If you haven't done so already, copy the plugin file s3dexp.dle from the 3DStudioMax_plugin directory to the standard plugin directory of your MAX installation (stdplugs). Next time you open MAX, Shout3D Scene Export (.s3d) will appear as an option in your export menu. Export it under the name shoutbox.s3d, and save it, once again, in the Shout3d_runtime\codebase\models directory of your Shout3D installation.

After exporting, open the .s3d file in a text editor and compare it with the VRML version. They are very similar. Unlike VRML, the .s3d format provides for multiple materials (appearances) on a single object, so as to implement the Multi\SubObject material type in MAX. The following is the .s3d version of the box. Once again, it has been edited of nonessential elements for simplicity.



Transform {
   translation 0 0 0
   children [
      Shape {
         appearance [
            MultiAppearance {
               material Material {
                  diffuseColor 0.5373 0.1961 0.1961
                  specularColor 0.045 0.045 0.045
                  shininess 0.25
                  transparency 0
               }
               diffuseMap DiffuseMap {
                  texture ImageTexture {
                     url "shout3dlogo.gif"
                  }
               }
            }
         ]
         geometry MultiMesh {
            coord Coordinate {
               point [
                  -50 0 50, 50 0 50, -50 0 -50, 50 0 -50,
                  -50 100 50, 50 100 50, -50 100 -50, 50 100 -50
               ]
            }
            coordIndex [
               0 2 3 -1 3 1 0 -1 4 5 7 -1 7 6 4 -1
               0 1 5 -1 5 4 0 -1 1 3 7 -1 7 5 1 -1
               3 2 6 -1 6 7 3 -1   2 0 4 -1 4 6 2 -1
            ]
            smoothingIndex [
               2 -1 2 -1 3 -1 3 -1 4 -1 4 -1
               5 -1 5 -1 6 -1 6 -1 7 -1 7 -1
            ]
            appearanceIndex [
               1 1 0 0 4 4 3 3 5 5 2 2
            ]
            textureMappings [
               TextureMapping {
                  texCoord TextureCoordinate {
                     point [
                        1 0, 0 0, 0 0, 0 0, 1 1, 0 1,
                        0 1, 0 1, 1 0, 1 1, 0 1, 0 1
                        0 0, 1 0, 0 0, 1 0, 1 1, 1 1,
                        0 1, 0 0, 0 0,   1 0, 1 1, 1 1,
                        0 1, 0 0, 0 0, 1 0, 1 1, 1 1,
                        0 0, 1 0, 1 1, 1 1, 0 0, 1 1
                     ]
                  }
                  texCoordIndex [
                     8 9 10 -1 11 12 13 -1 14 15 16 -1
                     17 18 19 -1 20 21 22 -1 23 24 25 -1
                     26 27 28 -1   29 5 1 -1 30 31 32 -1
                     33 7 3 -1 34 0 35 -1 4 6 2 -1
                  ]
               }
            ]
         }
      }
   ]
}

Next>


Copyright� 1999-2000, Eyematic Interfaces, Inc.